<template>
  <div class="header">
    <h1>我是Header</h1>
    <p>Count的值是{{ count }},电影的列表总长度是{{ movieList.length }}</p>
    <p>价格是{{ price }}</p>
    <button @click="increment">累加count的值</button>
    <button @click="incrementN({ n: 3 })">count的值每次加n</button>
    <button @click="incrementWait">等一等再加</button>
    <button @click="incrementNWait({ n: 5 })">等一等再加n</button>
  </div>
</template>

<script>
import { mapMutations, mapState,mapActions} from "vuex";
export default {
  name: "Header",
  mounted() {
    //这里打印看到在实例上有$store,里面就有state,state里面就是我们要的数据count
    console.log(this);
  },
  computed: {
    ...mapState("count",["count", "price", "movieList"]),
  },
  methods:{
    //映射辅助函数 帮助生成提交的事件函数
    ...mapMutations("count",["increment", "incrementN"]),

    ...mapActions("count",["incrementWait", "incrementNWait"]),
    // 计时器不传参
    // incrementWait() {
    //   //因为我们要先分发action,所以分发action使用$store.dispatch方法
    //   this.$store.dispatch("incrementWait");
    // },

    // //计时器传参
    // incrementNWait(payload) {
    //   //因为我们要先分发action,所以分发action使用$store.dispatch方法
    //   this.$store.dispatch("incrementNWait", payload);
    // }, 
  }
};
</script>


<style scoped>
.header {
  margin: 30px;
  background: yellowgreen;
}
</style>